1. Field of the Invention
The present invention concerns a color management system in which color transformations including a gamut mapping are composited together into a single color transformation, with the gamut mapping being customized (or tailored) in dependence on characteristics of the current color management session, such as being customized based on the image data being managed, or based on a relationship between input device gamut and output device gamut.
2. Description of the Related Art
Known color management systems transform images from an input colorant space corresponding to an input device into an output colorant space corresponding an output device. First, input image data is transformed into an intermediate color space from the input device colorant space using an input device color appearance transform. The intermediate color space is often referred to as a profile connection space, or PCS, and may be a device independent color space or a perceptual color space. The intermediate representation of the image data is subjected to gamut mapping so as to ensure that all colors in the transformed image data are representable in the output device. Then, the gamut mapped image data is transformed into the output colorant space using an output device color appearance transform. U.S. Pat. No. 5,463,480 to MacDonald describes one such color management system.
The input and output device color appearance transforms are transformations that are often embodied in mathematical expressions or in look-up tables (LUTs) that may be either one-dimensional or multi-dimensional. In the case of a LUT for an input device appearance transform, the LUT stores values in the PCS corresponding to spaced samples in the input device color space. A typical input device appearance transform, corresponding for example to a scanner, stores values in Jch or Jab coordinates (i.e., the CIECAM97s perceptual color space) corresponding to a three-dimensional grid of 9xc3x979xc3x979 samples in each of the red and green and blue components for the scanner. Output device appearance transforms, for example that of a printer, contain corresponding values of the output device colorants (such as cyan, yellow and magenta) based on spaced samples in Jch or Jab coordinates.
One of the more difficult challenges for color management systems is determining how to reproduce colors from the original image that cannot be produced within the gamut of colors on the destination device. xe2x80x9cGamut mappingxe2x80x9d is the attempt to map colors in a pleasing way. There are many gamut mapping algorithms in use today, and although they are ordinarily given in the form of mathematical expressions or look-up tables, they also are transformations of colors.
Use of these transformations (i.e., the input and output device appearance transforms and gamut mappings), whether they be LUTs or mathematical expressions or any other form of transformation, requires significant processing power. For example, because LUTs contain only spaced samples, interpolation is necessary to use these LUTs for any one set of image data, since it is unlikely that the image data will contain only values falling exactly at the LUT samples. Interpolation techniques are well known and include, for example, trilinear and tetrahedral interpolation. However, since interpolation must be applied to each and every piece of image data, both forward through the input device appearance transform and out through the output device appearance transform, processing is extensive and time consuming. This is compounded by gamut mapping, which also must be applied against each piece of transformed image data.
U.S. Pat. No. 5,432,906 to Newman proposes one solution to the amount of processing power needed, by creating a composite transform which is equivalent to a sequential application of multiple color transforms from an input color space to an output color space. Since the transforms themselves are composited into a single transform, Newman""s proposal lowers data processing overhead because image data need only be transformed through a single composite transform, rather than through multiple transforms.
The Newman proposal is disadvantageous, however, since once the composite transformation has been obtained, it is immutable and cannot be changed based on circumstances of each different color management session. For example, there are many situations in which it is preferable to customize or to tailor the gamut mapping algorithm based on the color management session. As one example, it is often preferable to tailor the gamut mapping algorithm based on the precise nature of the image data. For image data that falls entirely within the output device gamut, the gamut mapping algorithm need not be applied at all; whereas for increasingly out-of-gamut image data, increasingly compressive gamut mappings are applied. However, because the Newman system pre-computes a composite transform, such flexibility is not achievable.
It is an object of the invention to address the foregoing difficulty by forming a composite transform that incorporates gamut mapping, with the gamut mapping being customized or otherwise tailored for the current color management session. Because the gamut mapping is customized for the current color management session, color effects that would not even have been recognized until after the overall color management session was in place can easily be compensated through customization.
Thus, in one aspect, the invention is a color management system that operates with an input device appearance transform and an output device appearance transform together with a customizable gamut mapping algorithm so as to transform an image from an input colorant space to an output colorant space during a color management session. According to the invention, the gamut mapping algorithm is customized to the color management session in question, and then the gamut mapping algorithm is applied to either the input device appearance transform or the output device appearance transform, or both, so as to result in a composited transform that incorporates a customized gamut mapping.
Examples of suitable gamut mapping algorithms, that are customizable based on a color management session, are gamut mapping algorithms that depend on image data, gamut mapping algorithms that depend on a comparison between input and output device gamuts (such as the GCUSP, CLLIN and CARISMA algorithms), and gamut mapping algorithms that depend on current printing or viewing conditions. Other customizable gamut mapping algorithms may also be used, with customization being dependent upon the current color management session, such as parameterized gamut mapping algorithms whose parameters depend on information from the current color management session, such as information pertaining to the input image, the input device gamut, the output device gamut, or the output conditions such as viewing conditions or recording medium.
For example, the input device appearance transform and/or the output device appearance transform may include gamut boundary descriptors, and the gamut boundary descriptors might be utilized by a parameterized gamut mapping algorithm so as to generate a customized gamut mapping algorithm specific for a transformation from the input device to the output device.
Compositing of the gamut mapping algorithm with other transforms may be a full compositing, so as to yield a single transform from the input colorant space to the output colorant space, or may be a partial compositing, such as a composite transform from the input device space through to gamut-mapped device independent or perceptual color space. In addition, other transformations might also be applied, such as transformations tailored to achieve particular color effects, or to model color appearance.
In one particularly preferred arrangement, direct or indirect results of the input device appearance transform are gamut-mapped with the customized gamut mapping algorithm so as to yield a gamut-mapped composite transformation from input colorant space to a gamut-mapped device independent or perceptual color space. This arrangement is preferred since the input device appearance transform represents all possible input image colors in a compact way. Accordingly, since the input device appearance transform represents all possible image colors in a compact way, customized gamut mapping can be applied more efficiently than if the gamut mapping were applied to input image data transformed through the input device appearance transform. Thus, since the image can be expected to contain multiple occurrences of a large number of colorant values, particularly in the case of computer-generated images, processing according to the invention largely reduces redundant processing.
As an additional preferred embodiment, output device appearance transform can be applied to the foregoing partial composite transform, so as to yield a single composite transform from the input colorant space to the output colorant space in which a gamut mapping algorithm is customized to the particular color management session in question.
This brief summary has been provided so that the nature of the invention may be understood quickly. A more complete understanding of the invention can be obtained by reference to the following detailed description of the preferred embodiment thereof in connection with the attached drawings.